]> dgit.raspbian.org Git - gnome-shell.git/commit
Port the EdgeDragAction to ClutterGesture
authorJonas Dreßler <verdre@v0yd.nl>
Fri, 18 Mar 2022 15:25:38 +0000 (16:25 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 28 Aug 2025 17:14:06 +0000 (19:14 +0200)
commitcef149a6afd4e70465700db0825bd4e7ca14e4ff
treee52922ef1da2ec5db426b4cfcc35534e21634281
parentca80a3cd5d0c6b20ff55b4dc8b1c345aed8a3263
Port the EdgeDragAction to ClutterGesture

And since ClutterGestures will only be possible to implement in C (due to
performance concerns when we'll get rid of motion event compression and
start handling eg. 1000 HZ mouse events at the full rate), that means we
have to port the gesture to C!

It behaves mostly the same still: It's a single finger touch-only gesture
that recognizes as soon as a point that began on the monitor edge moves away
from that edge. It then emits "progress" signals with the distance from the
edge all the way until the fixed threshold distance (DRAG_DISTANCE) is
reached, where it then moves to COMPLETED.

There's definitely room for further improvements here, eg. the gesture
should probably only complete once the point is lifted from the screen.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2853>
js/js-resources.gresource.xml
js/ui/edgeDragAction.js [deleted file]
js/ui/keyboard.js
js/ui/windowManager.js
src/meson.build
src/shell-edge-drag-gesture.c [new file with mode: 0644]
src/shell-edge-drag-gesture.h [new file with mode: 0644]